x11: Query whether we have GLX support
authorEmmanuele Bassi <ebassi@gnome.org>
Thu, 16 Feb 2017 00:04:50 +0000 (00:04 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 28 Oct 2017 13:46:15 +0000 (09:46 -0400)
Epoxy 1.4 has new ad hoc API that we can use to check whether GLX is
available on the current system.

If we didn't use this API, we'd have to manually dlopen libGL (or its
equivalent on different OSes) and check if it had GLX symbols; since
Epoxy already does all of this internally, we can simply ask it instead.

https://bugzilla.gnome.org/show_bug.cgi?id=775279

gdk/x11/gdkglcontext-x11.c

index d76c29e6aafd24e05f44eadd44979b6602635294..5a28f58ac56eaa535739e5d1856bce51f54581e7 100644 (file)
@@ -799,6 +799,9 @@ gdk_x11_screen_init_gl (GdkScreen *screen)
 
   dpy = gdk_x11_display_get_xdisplay (display);
 
+  if (!epoxy_has_glx (dpy))
+    return FALSE;
+
   if (!glXQueryExtension (dpy, &error_base, &event_base))
     return FALSE;